package com.service.bean.area;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import com.service.bean.point.Point;

/**
 * 区域 
 * @author lj
 * Created on 2015年9月16日
 */
public abstract class Area {	
	
	/**
	 * 区域id 
	 */
	public String id;
	
	/**
	 * 区域名称
	 */
	public String name;
	
	/**
	 * 区域类别</br>
	 * 1:多边形</br>
	 * 2:线型
	 */
	public int type;
	
	/**
	 * 区域工作分类</br>
	 * 01:工作区域</br>
	 * 02~06:非工作区域
	 */
	public String kind;
	
	/**
	 * 路宽
	 */
	public int lineWidth;
	
	/**
	 * 坐标点 (这些坐标点是构成区域的坐标点)
	 */
	public List<Point> points = new ArrayList<Point>();
	
	/***
	 * 路段
	 */
//	public List<Road> roads = new ArrayList<Road>();
	public Map<String, Road> roads;
	
	
	/**
	 * 判断坐标点是否在区域内
	 * @param p
	 * @return
	 */
	public abstract boolean isInArea(Point p);
}
